/**
 * API配置文件
 * 集中管理所有API相关的配置和常量
 */

const config = {
  // API基础配置
  api: {
    // 使用本机IP地址代替localhost以解决小程序连接问题
    baseURL: 'http://192.168.1.6:3002/api',
    timeout: 10000,
    retryTimes: 3
  },

  // 数据库配置
  database: {
    host: 'localhost',
    port: 3306,
    user: 'root',
    password: 'root',
    database: 'community_service_platform'
  },

  // 分页配置
  pagination: {
    defaultPageSize: 10,
    maxPageSize: 50
  },

  // 错误消息
  messages: {
    networkError: '网络连接失败，请检查网络设置',
    serverError: '服务器错误，请稍后重试',
    timeoutError: '请求超时，请稍后重试',
    unknownError: '未知错误，请稍后重试',
    success: '操作成功',
    loading: '加载中...',
    noData: '暂无数据'
  },

  // 状态码
  statusCodes: {
    SUCCESS: 200,
    BAD_REQUEST: 400,
    UNAUTHORIZED: 401,
    FORBIDDEN: 403,
    NOT_FOUND: 404,
    SERVER_ERROR: 500
  },

  // 业务常量
  constants: {
    // 物品类别
    itemCategories: ['全部类别', '工具类', '电器类', '家具类', '运动器材', '其他'],

    // 技能类别
    skillCategories: ['全部类别', '生活服务', '教育培训', '维修服务', '咨询服务', '其他技能'],

    // 服务方式
    serviceMethods: ['全部方式', '线上服务', '线下服务', '两者皆可'],

    // 借用时长选项
    durationOptions: [
      { label: '全部时长', value: 0 },
      { label: '1-3天', value: 3 },
      { label: '1周', value: 7 },
      { label: '2周', value: 14 },
      { label: '1个月', value: 30 }
    ],

    // 状态
    status: {
      PENDING: 'pending',
      APPROVED: 'approved',
      REJECTED: 'rejected',
      PUBLISHED: 'published'
    }
  }
};

module.exports = config;